From 023c5c2aaa17341e610624c48255bde538cb8c4a Mon Sep 17 00:00:00 2001 From: Ian Campbell Date: Wed, 4 Apr 2012 16:10:18 +0100 Subject: [PATCH] libxl: fixup error handling in libxl_send_trigger xc_domain_send_trigger returns -1 and sets errno on failure so use LIBXL__LOG_ERRNO not LIBXL__LOG_ERRNOVAL(rc). Change the default case of the switch to set rc=-1,errno=EINVAL too. Also we weren't actually returning the error code we'd decided on. Signed-off-by: Ian Campbell Acked-by: Ian Jackson Committed-by: Ian Jackson --- tools/libxl/libxl.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/tools/libxl/libxl.c b/tools/libxl/libxl.c index 53443665d4..7a54524237 100644 --- a/tools/libxl/libxl.c +++ b/tools/libxl/libxl.c @@ -3309,18 +3309,19 @@ int libxl_send_trigger(libxl_ctx *ctx, uint32_t domid, rc = 0; break; default: - rc = EINVAL; + rc = -1; + errno = EINVAL; break; } if (rc != 0) { - LIBXL__LOG_ERRNOVAL(ctx, LIBXL__LOG_ERROR, rc, - "Send trigger '%s' failed", - libxl_trigger_to_string(trigger)); + LIBXL__LOG_ERRNO(ctx, LIBXL__LOG_ERROR, + "Send trigger '%s' failed", + libxl_trigger_to_string(trigger)); rc = ERROR_FAIL; } - return 0; + return rc; } int libxl_send_sysrq(libxl_ctx *ctx, uint32_t domid, char sysrq) -- 2.30.2